package com.hkpw.hik;

public class ArtemisPostTest {
//	/**
//	 * 请根据技术支持提供的实际的平台IP/端口和API网关中的合作方信息更换static静态块中的三个参数.
//	 * [1 host]
//	 * 		host格式为IP：Port，如10.0.0.1:443
//	 * 		当使用https协议调用接口时，IP是平台（nginx）IP，Port是https协议的端口；
//	 *     当使用http协议调用接口时，IP是artemis服务的IP，Port是artemis服务的端口（默认9016）。
//	 * [2 appKey和appSecret]
//	 * 		请按照技术支持提供的合作方Key和合作方Secret修改
//	 * 	    appKey：合作方Key
//	 * 	    appSecret：合作方Secret
//	 * 调用前看清接口传入的是什么，是传入json就用doPostStringArtemis方法，是表单提交就用doPostFromArtemis方法
//	 *
//	 */
//	/**
//	 * API网关的后端服务上下文为：/artemis
//	 */
//	private static final String ARTEMIS_PATH = "/artemis";
//
//	/**
//	 * 调用POST请求类型接口，这里以获取组织列表为例
//	 * 接口实际url:https://ip:port/artemis/api/resource/v1/org/orgList
//	 * @return
//	 */
//	public static String callPostApiGetOrgList() {
//		/**
//		 * https://ip:port/artemis/api/resource/v1/org/orgList
//		 * 通过查阅AI Cloud开放平台文档或网关门户的文档可以看到获取组织列表的接口定义,该接口为POST请求的Rest接口, 入参为JSON字符串，接口协议为https。
//		 * ArtemisHttpUtil工具类提供了doPostStringArtemis调用POST请求的方法，入参可传JSON字符串, 请阅读开发指南了解方法入参，没有的参数可传null
//		 */
//        ArtemisConfig config = new ArtemisConfig();
//        config.setHost("172.16.3.101:443"); // 代理API网关nginx服务器ip端口
//        config.setAppKey("21298204");  // 秘钥appkey
//        config.setAppSecret("vKi5QGGzHYKP4DIwhb75");// 秘钥appSecret
//		final String  getCamsApi = ARTEMIS_PATH + "/api/resource/v1/org/orgList";
//		Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数
//		paramMap.put("pageNo", "1");
//		paramMap.put("pageSize", "2");
//		String body = JSON.toJSON(paramMap).toString();
//		Map<String, String> path = new HashMap<String, String>(2) {
//			{
//				put("https://", getCamsApi);
//			}
//		};
//		String result = null;
//		try {
//			result = ArtemisHttpUtil.doPostStringArtemis(config, path, body, null, null, "application/json");
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		return result;
//	}
//
//
//	/**
//	 * 调用POST请求类型接口，这里以分页获取区域列表为例
//	 * 接口实际url：https://ip:port/artemis/api/api/resource/v1/regions
//	 * @return
//	 */
//	public static String callPostApiGetRegions(){
//		/**
//		 * https://ip:port/artemis/api/resource/v1/regions
//		 * 过查阅AI Cloud开放平台文档或网关门户的文档可以看到分页获取区域列表的定义,这是一个POST请求的Rest接口, 入参为JSON字符串，接口协议为https。
//		 * ArtemisHttpUtil工具类提供了doPostStringArtemis调用POST请求的方法，入参可传JSON字符串, 请阅读开发指南了解方法入参，没有的参数可传null
//		 */
//        ArtemisConfig config = new ArtemisConfig();
//        config.setHost("172.16.3.101:443"); // 代理API网关nginx服务器ip端口
//        config.setAppKey("21298204");  // 秘钥appkey
//        config.setAppSecret("vKi5QGGzHYKP4DIwhb75");// 秘钥appSecret
//		final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/regions";
//		Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数
//		paramMap.put("pageNo", "1");
//		paramMap.put("pageSize", "2");
//		paramMap.put("treeCode", "0");
//		String body = JSON.toJSON(paramMap).toString();
//		Map<String, String> path = new HashMap<String, String>(2) {
//			{
//				put("https://", getCamsApi);
//			}
//		};
//		String result = null;
//		try {
//			result = ArtemisHttpUtil.doPostStringArtemis(config, path, body, null, null, "application/json");
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		return result;
//	}
//
//    /**
//     * 调用POST接口，返回图片
//     * 接口实际url：https://ip:port/artemis/api/visitor/v1/record/pictures
//     * @return
//     */
//    public static String callPostImgs() throws Exception {
//        ArtemisConfig config = new ArtemisConfig();
//        config.setHost("10.19.132.82"); // 代理API网关nginx服务器ip端口
//        config.setAppKey("27019246");  // 秘钥appkey
//        config.setAppSecret("MJahkj4ksTZjImH5f2Fz");// 秘钥appSecret
//        final String getSecurityApi = "/artemis" + "/api/visitor/v1/record/pictures"; // 接口路径
//        Map<String, String> path = new HashMap<String, String>(2) {
//            {
//                put("https://", getSecurityApi);
//            }
//        };
//        Map<String, String> head = new HashMap<String, String>(2) {  //get请求的head参数
//            {
//                put("headpost", "sky-test");
//            }
//        };
//        Map<String, String> query = new HashMap<String, String>(2) {  //get请求的head参数
//            {
//                put("domainId", "0");
//            }
//        };
//        JSONObject jsonBody = new JSONObject();
//        jsonBody.put("svrIndexCode", "9ff58bc2-65a5-464b-b28c-daea67ba9569");
//        jsonBody.put("picUri", "/pic?9dda12i40-e*5b84626c4105m5ep=t=i3p*i=d1s*i=d3b*i1d3b*855925cea-96008b--2718943z855s=5i76=");
//        String body = jsonBody.toJSONString();
//        //参数根据接口实际情况设置
//        HttpResponse result = ArtemisHttpUtil.doPostStringImgArtemis(config, path, body, query, null,"application/json",head);
//        try {
//            HttpResponse resp = result;
//            if (302==resp.getStatusLine().getStatusCode()) {
//                /*
//                获取图片数据保存到本地
//                注：1.对于有时效的图片，必须尽快保存到本地
//                   2.若无时效，则可以直接保存location，后续自行访问获取
//                 */
//                Header header=  resp.getFirstHeader("location");
//                String  newUrl = header.getValue();
//                HttpGet httpget = new HttpGet(newUrl);
//                HttpClient httpClient = wrapClient(httpget.getURI().getScheme()+"://"+httpget.getURI().getHost());
//                HttpResponse execute = httpClient.execute(httpget);
//                HttpEntity entity = execute.getEntity();
//                InputStream in = entity.getContent();
//                Tools.savePicToDisk(in, "d:/", "test311.jpg");
//            }else{
//                System.out.println("下载出错");
//            }
//
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//		return "";
//    }
//
//	public static void main(String[] args) {
//		String result = callPostApiGetOrgList();
//		System.out.println(result);
//		//String VechicleDataResult = callPostApiGetRegions();
//		//System.out.println(VechicleDataResult);
//	}


}
